Skip to content

texture2ddecoder: add build-texture2ddecoder.yml for riscv64 wheels - #1594

Merged
luhenry merged 2 commits into
mainfrom
texture2ddecoder
Sep 8, 2026
Merged

texture2ddecoder: add build-texture2ddecoder.yml for riscv64 wheels#1594
luhenry merged 2 commits into
mainfrom
texture2ddecoder

Conversation

@luhenry

@luhenry luhenry commented Sep 8, 2026

Copy link
Copy Markdown
Member

Compiles a pure C++ setuptools extension decoding GPU texture formats (BCn, ETC, ASTC, PVRTC, ATC, crunch). Upstream publishes no riscv64 wheel.

Mirrors upstream's release.yml.

Differs from upstream

  • Pins the release commit, not a tag - upstream cut 1.0.6 without pushing one; the tree matches the PyPI sdist byte-for-byte.

Matrix: cp312/cp313/cp314, no cp314t - setup.py's own abi3 tagging has no Py_GIL_DISABLED guard, so a free-threaded build defines Py_LIMITED_API and hits CPython's own compile-time error; upstream ships no free-threaded wheel either.

Testing

  • same as upstream

License: OK

Built on cp312 locally (macOS/arm64); 9 passed.

Pure C++ setuptools extension (no Rust/PyO3, no SIMD intrinsics) - builds
a single cp311-abi3 wheel from cp312/cp313/cp314. Upstream ships no git
tags, so the workflow pins the release commit that matches the 1.0.6
sdist byte-for-byte. cp314t is dropped: setup.py's own bdist_wheel
override unconditionally sets Py_LIMITED_API for CPython >=3.11 with no
Py_GIL_DISABLED guard, which hard-errors under a free-threaded
interpreter (reproduced locally); upstream ships no free-threaded wheel
either.
@luhenry
luhenry merged commit 7f656bd into main Sep 8, 2026
6 checks passed
@luhenry
luhenry deleted the texture2ddecoder branch September 8, 2026 14:08
@luhenry luhenry linked an issue Sep 8, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

texture2ddecoder riscv64 support

1 participant